package basic.comparableAndComparator;

/**
 * @Description: TODO Comparable实现类
 * @Author: wzj
 * @Date: 2020/4/11 9:23
 * Comparable<T>泛型T可以是任何对象，不一定非得是Comparable的实现类对象，只能Comparable的实现类对象和T相比
 */
public class ComparableImpl implements Comparable<CompareObj>{
    private int i;
    private String str;

    public ComparableImpl() {
    }

    public ComparableImpl(int i, String str) {
        this.i = i;
        this.str = str;
    }

    public String getStr() {
        return str;
    }

    public void setStr(String str) {
        this.str = str;
    }

    public int getI() {
        return i;
    }

    public void setI(int i) {
        this.i = i;
    }

    @Override
    public int compareTo(CompareObj o) {//这里就是ComparableImpl和CompareObj两个不同类型对象进行比较
        if(i>o.getI()){ //大于被比较对象，返回正数
            return 1;
        }
        if(i<o.getI()){ //小于被比较对象，返回负数
            return -1;
        }
        return 0;
    }
}
